Digital systems can be designed to include combinatorial circuitry and storage circuitry. Combinatorial circuitry comprises logic gates of digital systems and receive one or more input signals, but do not form or have any internal storage circuitry. As such, the combinatorial circuitry can produce output signals based only on a current state of the input signals. Storage circuitry can include various types of storage elements, such as flip-flops and latches, that can store a value received at their input terminal, and can then provide the stored value as an output value at an output terminal. In a digital synchronous system the output value of a storage circuitry can be provided as input data to combinatorial circuity in a subsequent clock cycle, and values provided from the combinatorial circuitry can be provided to the storage circuitry as input data.
Storage elements in digital synchronous systems receive clock signals that cause a storage element to store a value at its input and to provide the stored value at its output terminal. In a digital synchronous design, a common clock signal can be provided to all of the storage elements. In such a design, all of the storage elements can change states within a short time interval of each other. For example, if all of the storage elements receive the clock signal at the same time, they will update their stored value at substantially the same time.
Having the same clock signal arrive at multiple storage elements at the same time results can result in simultaneous switching of the storage circuitry, which can cause a large amount of electromagnetic radiation, as well as a high degree of substrate noise, in the digital synchronous system. The amount of electromagnetic radiation and substrate noise can be sufficiently high that it can be detected and analyzed by test equipment external to the digital synchronous system. By analyzing the electromagnetic signals produced by a large number of clock transitions, details of the operation of the digital synchronous system can be predicted. For a digital synchronous system that processes confidential information, such analysis can be used to determine the confidential information. In addition, storage elements consume power upon storing values in response to the clock signal input. Thus, providing the digital synchronous system with a single clock signal can cause a large amount of electromagnetic radiation, can cause high substrate noise, and can allow confidential information to be determined.